package com.ruoyi.purchase.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * AllocationPlan对象 allocation_plan
 * 
 * @author kevinness
 * @date 2025-01-17
 */
public class AllocationPlan extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 调拨编号 */
    @Excel(name = "调拨编号")
    private String allocationNo;

    /** 运单号 */
    private String trackingNo;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private String orderNo;

    /** 调拨时间（提前计划好） */
    @Excel(name = "调拨时间")
    private Date allocationDate;

    /** 预期送达时间 */
    private Date expectedDeliveryTime;

    /** 物流商编码 */
    private String deliveryCode;

    /** 物流商名称 */
    @Excel(name = "物流商名称")
    private String deliveryName;

    /** 总重量 */
    private Double weight;

    /** 总重量单位 */
    private String weightUnit;

    /** 运输总数 */
    private Integer transportQuantity;

    /** 仓库编号 */
    @Excel(name = "仓库编号")
    private String warehouseNo;

    /** 发货地 */
    private String origin;

    /** 收货地 */
    private String destination;

    /** 计划状态 */
    @Excel(name = "计划状态")
    private String state;

    /** 计划生成时间 */
    @Excel(name = "计划生成时间")
    private String createdTime;

    /** 修改日期 */
    private String modifiedDate;

    /** 修改人 */
    private String modifiedBy;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    public String getAllocationNo() {
        return allocationNo;
    }

    public void setAllocationNo(String allocationNo) {
        this.allocationNo = allocationNo;
    }

    public String getTrackingNo() {
        return trackingNo;
    }

    public void setTrackingNo(String trackingNo) {
        this.trackingNo = trackingNo;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public Date getAllocationDate() {
        return allocationDate;
    }

    public void setAllocationDate(Date allocationDate) {
        this.allocationDate = allocationDate;
    }

    public Date getExpectedDeliveryTime() {
        return expectedDeliveryTime;
    }

    public void setExpectedDeliveryTime(Date expectedDeliveryTime) {
        this.expectedDeliveryTime = expectedDeliveryTime;
    }

    public String getDeliveryCode() {
        return deliveryCode;
    }

    public void setDeliveryCode(String deliveryCode) {
        this.deliveryCode = deliveryCode;
    }

    public String getDeliveryName() {
        return deliveryName;
    }

    public void setDeliveryName(String deliveryName) {
        this.deliveryName = deliveryName;
    }

    public Double getWeight() {
        return weight;
    }

    public void setWeight(Double weight) {
        this.weight = weight;
    }

    public String getWeightUnit() {
        return weightUnit;
    }

    public void setWeightUnit(String weightUnit) {
        this.weightUnit = weightUnit;
    }

    public Integer getTransportQuantity() {
        return transportQuantity;
    }

    public void setTransportQuantity(Integer transportQuantity) {
        this.transportQuantity = transportQuantity;
    }

    public String getWarehouseNo() {
        return warehouseNo;
    }

    public void setWarehouseNo(String warehouseNo) {
        this.warehouseNo = warehouseNo;
    }

    public String getOrigin() {
        return origin;
    }

    public void setOrigin(String origin) {
        this.origin = origin;
    }

    public String getDestination() {
        return destination;
    }

    public void setDestination(String destination) {
        this.destination = destination;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(String createdTime) {
        this.createdTime = createdTime;
    }

    public String getModifiedDate() {
        return modifiedDate;
    }

    public void setModifiedDate(String modifiedDate) {
        this.modifiedDate = modifiedDate;
    }

    public String getModifiedBy() {
        return modifiedBy;
    }

    public void setModifiedBy(String modifiedBy) {
        this.modifiedBy = modifiedBy;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("allocationNo", getAllocationNo())
            .append("trackingNo", getTrackingNo())
            .append("orderNo", getOrderNo())
            .append("allocationDate", getAllocationDate())
            .append("expectedDeliveryTime", getExpectedDeliveryTime())
            .append("deliveryCode", getDeliveryCode())
            .append("deliveryName", getDeliveryName())
            .append("weight", getWeight())
            .append("weightUnit", getWeightUnit())
            .append("transportQuantity", getTransportQuantity())
            .append("warehouseNo", getWarehouseNo())
            .append("origin", getOrigin())
            .append("destination", getDestination())
            .append("state", getState())
            .append("createdTime", getCreatedTime())
            .append("modifiedDate", getModifiedDate())
            .append("modifiedBy", getModifiedBy())
            .append("remarks", getRemarks())
            .toString();
    }
}
